#ifndef DASHBOARDUI_H
#define DASHBOARDUI_H

#include "DashboardUI_PatientSelect.h"

#include <QMainWindow>

class UIManager;

namespace Ui {
class Dashboard;
}

class Dashboard : public QMainWindow
{
    Q_OBJECT

public:
    explicit Dashboard(UIManager *manager, QWidget *parent = 0);
    ~Dashboard();

public slots:
    void reload();

private slots:
    void on_actionLogout_triggered();
    void on_actionAdd_Patient_triggered();

signals:
    void reloaded();

private:
    void setupTabs();

    void addTab(QWidget * tab, QString tabTitle, bool reload = false,
                bool changesData = false);
    void addRecordTabs();
    void addPatientPanel();

    Ui::Dashboard * ui;
    UIManager * manager;

    DashboardUI_PatientSelect * patientSelectPanel;

    QString windowTitle;

    QList<QWidget *> tabList;
};

#endif // DASHBOARDUI_H
